#include <stdio.h>
#include "../head/default.h"         //define 宏定义及static变量
int f_help(char program_name[]) {
    printf("\n\n\n");
    printf("\033[35m参数介绍 : [Version : %.1f]\n", VERSION);
    printf("\033[32m-r  | --role        server|client\033[33m                      [ 指定一个角色,以什么角色运行 ]\n");
    printf("\033[32m-h  | --host        192.168.1.1\033[33m                        [ 以client角色运行时,需要使用这个参数指定server端得ip ]\n");
    printf("\033[32m-p  | --port        9298\033[33m                               [ server角色表示监听哪个端口,client表示访问server端得的哪个端口 ]\n");
    printf("\033[32m-c  | --comm        'shell command'\033[33m                    [ shell命令,-r client才有效,建议用引号引起来 ]\n");
    printf("\033[32m-hw | --host-white  '192.168.1.1,192.168.1.0/24'\033[33m       [ 白名单,表示允许哪些地址访问,-r server才有效,建议用引号引起来 ]\n");
    printf("\033[32m-hb | --host-black  '192.168.1.1,192.168.0.0/16'\033[33m       [ 黑名单,表示不允许哪些地址访问,-r server才有效,建议用引号引起来 ]\n");
    printf("\033[32m-cb | --comm-black  'rm,shutdown,reboot,init'\033[33m          [ 命令黑名单,不允许哪些命令执行,-r server才有效,建议用引号引起来 ]\n");
    printf("\033[32m      --pass        'password string'\033[33m                  [ -r server指定了密码后, client连接的时候也要指定密码 ]\n");
    printf("\033[32m      --conf        'conf file path'\033[33m                   [ 配置文件路径 ]\n");
    printf("\033[32m      --log         'log file path'\033[33m                    [ 日志文件路径, 输出的日志都打入到这个文件 ]\n");
    printf("\n");
    printf("\033[31m注意 : 黑白名单中, 只要有一项满足拒绝访问就会拒绝. \033[0m\n");
    printf("\t1、使用了白名单, 但是client不在白名单中, 这会被拒绝访问\n");
    printf("\t2、使用了黑名单, client在黑名单中, 这也会被拒绝访问\n");
    printf("\n\n\n");
    printf("\033[35m用例介绍 : \033[0m\n");
    printf("\tserver : %s -r server -p 9298 -hw 192.168.1.100 -hb 192.168.1.200 --pass mypassword --log log_path\n", program_name);
    printf("\tclient : %s -r client -h 192.168.1.100 -p 9298 -c 'hostname'\n", program_name);
    printf("\n\n\n");
    printf("\033[35m配置文件 : \033[0m\n");
    printf("host = 192.168.1.1\n");
    printf("port = 9298\n");
    printf("password = 123456\n");
    printf("log = /var/log/msstyle.log\n");
    printf("host-white = 192.168.1.1,192.168.1.0/24,192.168.0.0/16\n");
    printf("host-black = 192.168.1.1,192.168.1.0/24,192.168.0.0/16\n");
    printf("comm-black = rm,shutdown,reboot,init,halt,init\n");
    printf("\n\n\n");
    printf("\033[34m如有其他疑问, 请联系: mo_shan@yeah.net \033[0m\n\n");
    return 0;
}
